<!DOCTYPE html>
<html lang="en">
	<head>
		<meta charset="utf-8" />
		<base href="../../" />
		<script src="list.js"></script>
		<script src="page.js"></script>
		<link type="text/css" rel="stylesheet" href="page.css" />
	</head>
	<body>
		[page:Object3D] &rarr; [page:Camera] &rarr;

		<h1>[name]</h1>

		<div class="desc">
			Camera that uses [link:https://en.wikipedia.org/wiki/Orthographic_projection orthographic projection].<br /><br />

			In this projection mode, an object's size in the rendered image stays constant
			regardless of its distance from the camera.<br /><br />

			This can be useful for rendering 2D scenes and UI elements, amongst other things.
		</div>


		<h2>Example</h2>

		<div>[example:canvas_camera_orthographic camera / orthographic ]</div>
		<div>[example:canvas_camera_orthographic2 camera / orthographic2 ]</div>
		<div>[example:webgl_camera camera ]</div>
		<div>[example:webgl_interactive_cubes_ortho interactive / cubes / ortho ]</div>
		<div>[example:webgl_materials_cubemap_dynamic materials / cubemap / dynamic ]</div>
		<div>[example:webgl_postprocessing_advanced postprocessing / advanced ]</div>
		<div>[example:webgl_postprocessing_dof2 postprocessing / dof2 ]</div>
		<div>[example:webgl_postprocessing_godrays postprocessing / godrays ]</div>
		<div>[example:webgl_rtt rtt ]</div>
		<div>[example:webgl_shaders_tonemapping shaders / tonemapping ]</div>
		<div>[example:webgl_shadowmap shadowmap ]</div>
		<div>[example:webgl_terrain_dynamic terrain / dynamic ]</div>

		<code>var camera = new THREE.OrthographicCamera( width / - 2, width / 2, height / 2, height / - 2, 1, 1000 );
scene.add( camera );</code>


		<h2>Constructor</h2>


		<h3>[name]( [page:Number left], [page:Number right], [page:Number top], [page:Number bottom], [page:Number near], [page:Number far] )</h3>
		<div>
		left — Camera frustum left plane.<br />
		right — Camera frustum right plane.<br />
		top — Camera frustum top plane.<br />
		bottom — Camera frustum bottom plane.<br />
		near — Camera frustum near plane.<br />
		far — Camera frustum far plane.<br /><br />

		Together these define the camera's [link:https://en.wikipedia.org/wiki/Viewing_frustum viewing frustum].
		</div>


		<h2>Properties</h2>
		<div>See the base [page:Camera] class for common properties.</div>

		<h3>[property:Float bottom]</h3>
		<div>Camera frustum bottom plane.</div>

		<h3>[property:Float far]</h3>
		<div>
		Camera frustum far plane. Default is *2000*.<br /><br />

		The valid range is between the current value of the [page:.near near] plane and infinity.
		</div>

		<h3>[property:Boolean isOrthographicCamera]</h3>
		<div>
			Used to test whether this or derived classes are OrthographicCameras. Default is *true*.<br /><br />

			This should not be changed as it is used internally by the renderer for optimisation.
		</div>

		<h3>[property:Float left]</h3>
		<div>Camera frustum left plane.</div>

		<h3>[property:Float near]</h3>
		<div>
			Camera frustum near plane. Default is *0.1*.<br /><br />

			The valid range is between 0 and the current value of the [page:.far far] plane.
			Note that, unlike for the [page:PerspectiveCamera], *0* is a valid value for an
			OrthographicCamera's near plane.
		</div>

		<h3>[property:Float right]</h3>
		<div>Camera frustum right plane.</div>

		<h3>[property:Float top]</h3>
		<div>Camera frustum top plane.</div>

		<h3>[property:Object view]</h3>
		<div>Set by [page:OrthographicCamera.setViewOffset setViewOffset]. Default is *null*.</div>

		<h3>[property:number zoom]</h3>
		<div>Gets or sets the zoom factor of the camera. Default is *1*.</div>

		<h2>Methods</h2>
		<div>See the base [page:Camera] class for common methods.</div>

		<h3>[method:null setViewOffset]( [page:Float fullWidth], [page:Float fullHeight], [page:Float x], [page:Float y], [page:Float width], [page:Float height] )</h3>
		<div>
		fullWidth — full width of multiview setup<br />
		fullHeight — full height of multiview setup<br />
		x — horizontal offset of subcamera<br />
		y — vertical offset of subcamera<br />
		width — width of subcamera<br />
		height — height of subcamera<br /><br />

			Sets an offset in a larger [link:https://en.wikipedia.org/wiki/Viewing_frustum viewing frustum].
			This is useful for multi-window or multi-monitor/multi-machine setups.
			For an example on how to use it see [page:PerspectiveCamera.setViewOffset PerspectiveCamera].
		</div>

		<h3>[method:null clearViewOffset]()</h3>
		<div>
		Removes any offset set by the .setViewOffset method.
		</div>

		<h3>[method:null updateProjectionMatrix]()</h3>
		<div>
		Updates the camera projection matrix. Must be called after any change of parameters.
		</div>

		<h3>[method:JSON toJSON]()</h3>
		<div>
		Return the camera's data in JSON format.
		</div>


		<h2>Source</h2>

		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
	</body>
</html>
